package cn.rkylin.oms.aftersale.event.dao;

import java.util.List;

import com.github.pagehelper.PageInfo;

import cn.rkylin.oms.aftersale.event.domain.AfterSaleEvent;
import cn.rkylin.oms.aftersale.event.vo.AfterSaleEventVO;

public interface IAfterSaleEventDAO {

    /**
     * selectByCondition:根据查询条件获取售后事件列表，带分页信息. <br/>
     *
     * @author zhanghao
     * @param eventVO
     * @return
     * @throws Exception
     */
    PageInfo<AfterSaleEventVO> selectPagedByCondition(int page, int rows, AfterSaleEventVO eventVO) throws Exception;

    /**
     * selectByCondition:根据查询条件获取售后事件列表，不带分页信息. <br/>
     *
     * @author zhanghao
     * @param eventVO
     * @return
     * @throws Exception
     */
    List<AfterSaleEventVO> selectByCondition(AfterSaleEventVO eventVO) throws Exception;

    /**
     * insert:新增售后事件
     * 
     * @param record
     * @return
     * @throws Exception
     */
    int insert(AfterSaleEvent record) throws Exception;

    /**
     * selectByPrimaryKey：根据事件id查询售后事件
     * 
     * @param eventId
     * @return
     * @throws Exception
     */
    AfterSaleEvent selectByPrimaryKey(String eventId) throws Exception;

    /**
     * update：修改售后事件
     * 
     * @param record
     * @return
     * @throws Exception
     */
    int update(AfterSaleEvent record) throws Exception;

    /**
     * 获取系统订单对应售后事件列表 wangxing 2017-12-04 add
     * @param orderId
     * @return
     * @throws Exception
     */
    public List<AfterSaleEventVO> selectByOrderId(String orderId) throws Exception;

}